<!DOCTYPE html>
<html>
<head>
<title>Beyond Prototype</title>
<meta name="title" content="Beyond Prototype">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<style type="text/css">
@import "/dojo10/dojo/resources/dojo.css";
@import "/dojo10/dojo/resources/dnd.css";
@import "/dojo10/dojox/layout/resources/ResizeHandle.css";
@import "/dojo10/dijit/themes/claro/claro.css";
@import "/dojo10/dojox/grid/resources/claroGrid.css";
</style>
<style type="text/css">
.dijitStackContainer {border: 1px solid #ccc;}
.dijitContentPane{border: 1px solid #ccc;background-color:white;}
</style>
<script src="//cdn.bootcss.com/html2canvas/0.4.1/html2canvas.js"></script>
<script type="text/javascript">
var dojoConfig = {parseOnLoad:false,isDebug:false};
/*@@@*/
var ls=window.localStorage,subject=ls.preview,prototypeCode=ls["prototype"+subject];delete ls["prototype"+subject]; </script>
<script src="/dojo10/dojo/dojo.js"></script>
<script type="text/javascript">
require({async:false},["dojo/_base/array","dojo/_base/lang","dojo/ready","dojo/parser","dojo/query","dojo/dom-attr","dojo/_base/window","dojo/dom-construct","dojo/dom-style","dojo/json","dojo/has","dijit/registry", "dojo/sniff","dijit/form/SimpleTextarea","dijit/form/TextBox"]
,function(array,lang,ready,parser,query,attr,_win,construct,style,json,has,registry,sniff,SimpleTextarea,TextBox){
var str = arguments.callee.toString().replace(/\n*/g,"").replace(/\s*/g,"");
var args = str.substring(str.indexOf("(") + 1,str.indexOf(")")).split(",");
for(var i = args.length - 1; i >= 0; i--){
window[args[i]] = arguments[i];
}
});
require({async:false},["dijit/_WidgetBase","dijit/form/ComboBox","dijit/form/FilteringSelect","dijit/form/MultiSelect","dojo/store/Memory"],function(_WidgetBase,ComboBox,FilteringSelect,MultiSelect,Memory){lang.extend(_WidgetBase,{_r6:["transform","transform-origin","transition","keyframes","animation","animation-play-state"],B3:function(){if(this.B9==undefined){this.B9="";if(has("webkit")!=undefined){this.isWebKit=has("webkit");this.B9="-webkit-"}else if(has("ie")!=undefined){this.isIE=has("ie");if(this.isIE==9)this.B9="-ms-"}else if(has("mozilla")!=undefined){this.isMozilla=has("mozilla");if(has("ff")<37)this.B9="-moz-"}else if(has("opera")!=undefined){this.isOpera=has("opera");this.B9="-o-"}else if(navigator.appVersion.indexOf("rv:11")!=-1){this.isIE=11;this.B9="-ms-"}}return this.B9},B4:function(text,excludeFirstWord){var newText="";var words=text.split(" ");for(var i=excludeFirstWord?1:0;i<words.length;i++)newText+=words[i].substring(0,1).toUpperCase()+words[i].substring(1);if(excludeFirstWord)newText=words[0]+newText;return newText},B5:function(htmlName){var newName=htmlName;var B9=this.B3();for(var i=this._r6.length-1;i>=0;i--)if(htmlName==this._r6[i]){newName=B9+htmlName;break}return newName},A7:function(css){if(this._r6Rexp==undefined){this._r6Rexp={};for(var i=0;i<this._r6.length;i++)this._r6Rexp[this._r6[i]]=new RegExp(this._r6[i]+":","g")}var newCss=css;var B9=this.B3();if(newCss)for(var e in this._r6Rexp)newCss=newCss.replace(this._r6Rexp[e],B9+e+":");return newCss},A6:function(htmlName){var newName=htmlName;var customized=false;var B9=this.B3();for(var i=bp._r6.length-1;i>=0;i--)if(htmlName==bp._r6[i]){customized=true;break}if(customized&&B9!="")newName=B9.replace(/-/g,"")+this.B4(htmlName.replace(/-/g," "),false).replace(/ /g,"");else newName=this.B4(htmlName.replace(/-/g," "),true).replace(/ /g,"");return newName},B6:function(name,keyframes){var styleRule="";for(var e in keyframes)styleRule+=e.substring(1)+"% {"+keyframes[e]+"} ";if(styleRule)styleRule="@"+this.B5("keyframes")+" "+name+" {"+styleRule+"}";return styleRule},B7:function(styleRule){var styleSheet=window._dynamicStyleSheet;if(!styleSheet)if(document.createStyleSheet)styleSheet=document.createStyleSheet();else{var dynamicStyle=document.createElement("style");dynamicStyle.type="text/css";document.getElementsByTagName("head")[0].appendChild(dynamicStyle);styleSheet=dynamicStyle.sheet}if(styleRule)styleSheet.insertRule(styleRule,styleSheet.cssRules.length)},keyframes:null,_setKeyframesAttr:function(keyframes){for(var name in keyframes)this.B7(this.B6(name,keyframes[name]))},comment:"",_setCommentAttr:function(text){this.comment=text;this.domNode.title=text}});lang.extend(ComboBox,{options:null,_setOptionsAttr:function(options){array.forEach(options,function(opt){if(!opt.label)opt.label=opt.value});var store=this.get("store");if(store){store["data"]=options;this.set("searchAttr","label")}else{this.set("store",new Memory({data:options}));this.set("searchAttr","label")}delete this.options;this.options=options}});lang.extend(FilteringSelect,{required:false,options:null,_setOptionsAttr:function(options){array.forEach(options,function(opt){if(!opt.label)opt.label=opt.value});var store=this.get("store");if(store){store["data"]=options;this.set("searchAttr","label")}else{this.set("store",new Memory({data:options}));this.set("searchAttr","label")}delete this.options;this.options=options}});lang.extend(MultiSelect,{options:null,_setOptionsAttr:function(options){var store=this.get("store");if(store){store["data"]=options;this.set("searchAttr","value")}else{this.set("store",new Memory({data:options}));this.set("searchAttr","value")}construct.empty(this.containerNode);array.forEach(options,function(option){construct.place(lang.replace("\x3coption value\x3d'{value}'\x3e{label}\x3c/option\x3e",option),this.containerNode,"last")},this)},addOption:function(options,index){console.warn("@Decrep, please use addOptions(...)");array.forEach(options,function(option){construct.place(lang.replace("\x3coption value\x3d'{value}'\x3e{label}\x3c/option\x3e",option),this.containerNode,index==undefined?"last":index)},this)},hasOption:function(value){return array.filter(this.containerNode.options,function(option){return option.value==value}).length>0},getOption:function(value){return array.filter(this.containerNode.options,function(option){return option.value==value})[0]},replaceOptions:function(options){array.forEach(options,function(opt){var existOpt;if(opt.key)existOpt=query("option",this.containerNode).filter(function(option){return option.value.indexOf(opt.key)==0})[0];else existOpt=this.getOption(opt.value);if(existOpt){existOpt.innerHTML=opt.label;existOpt.value=opt.value}else construct.place(lang.replace("\x3coption value\x3d'{value}'\x3e{label}\x3c/option\x3e",opt),this.containerNode,"last")},this)},removeOptions:function(options){array.forEach(options,function(opt){if(opt.domNode)construct.destroy(opt,this.containerNode);else construct.destroy(this.getOption(opt.value),this.containerNode)},this)},removeOption:function(option){construct.destroy(option,this.containerNode);option=null},addOptions:function(options,index){array.forEach(options,function(option){construct.place(lang.replace("\x3coption value\x3d'{value}'\x3e{label}\x3c/option\x3e",option),this.containerNode,index==undefined?"last":index)},this)},removeValue:function(value){var option=this.getOption(value);if(option)this.removeOption(option)},getOptions:function(){return query("option",this.containerNode)},getValues:function(delimeter){var _delimeter=delimeter?delimeter:",";var value="";var options=this.containerNode.options;if(options.length>0){value=options[0].value;for(var i=1;i<options.length;i++)value+=_delimeter+options[i].value}return value.trim()},getLables:function(delimeter){var _delimeter=delimeter?delimeter:",";var value="";var options=this.containerNode.options;if(options.length>0){value=options[0].innerHTML;for(var i=1;i<options.length;i++)value+=_delimeter+options[i].innerHTML}return value.trim()},setValues:function(value,delimeter){this.clearOptions();if(value){var options=[];array.forEach(value.split(delimeter?delimeter:","),function(option){options.push({label:option,value:option.split(":")[0]})},this);this.replaceOptions(options)}},clearOptions:function(){var options=this.containerNode.options;array.forEach(options,function(option){construct.destroy(option,this.containerNode)},this)}})});ready(function(){var dom=construct.create("div",{innerHTML:prototypeCode});attr.set(dom,"id","prototype");query(".B1",dom).forEach(function(node){if(node.innerText){var B1=json.parse(node.innerText,false);_win.body().style.cssText=B1.style;if(B1.title)document.title=B1.title}});construct.place(dom,_win.body(),"last");var mids={};query("[dojotype]",_win.body()).forEach(function(node){mids[attr.get(node,"dojotype").replace(/\./g,"/")]=""});query("[data-dojo-type]",_win.body()).forEach(function(node){mids[attr.get(node,"data-dojo-type").replace(/\./g,"/")]=""});query(".requiredClazz",_win.body()).forEach(function(node){for(var e=node.innerText.split(","),l=e.length-1;l>=0;l--)mids[e[l].replace(/\./g,"/")]=""});for(var mid in mids){var name=mid.substring(mid.lastIndexOf("/")+1);require({async:false},mid,function(widget){_win[name]=widget})}parser.parse(_win.body()).then(function(instances){})});
</script>
</head>
<body class="claro">
</body>
</html>